package cn.hdmis.dao;

import java.io.Serializable;
import java.util.List;

import cn.hdmis.entity.Grade;
import cn.hdmis.entity.Teacher;
import cn.hdmis.service.TeacherService;

/** 
* @ClassName: TeacherDao 
* @Description: TODO
* @author pnwzgx@163.com
* @date 2011-3-26 下午07:26:16 
*  
*/
public interface TeacherDao extends BaseDao<Teacher> {
	/** 
	* @Title: addTeacher 
	* @Description: TODO 新增教师
	* @param @param teacher 
	* @return void 
	* @throws 
	*/
	public void addTeacher(Teacher teacher);
	/** 
	* @Title: removeTeacher 
	* @Description: TODO 教师离职
	* @param @param teacher 
	* @return void 
	* @throws 
	*/
	public void removeTeacher(Serializable id);
	/** 
	* @Title: assignClass 
	* @Description: TODO 给教师分配班级
	* @param @param clazz 
	* @return void 
	* @throws 
	*/
	public void assignClass(Grade clazz);
	/** 
	* @Title: changeClass 
	* @Description: TODO 调换班级
	* @param @param clazz 
	* @return void 
	* @throws 
	*/
	public void changeClass(Grade clazz);
	/** 
	* @Title: workAge 
	* @Description: TODO 查询老师工作年限
	* @param @param teacher
	* @param @return 
	* @return int 
	* @throws 
	*/
	public int workAge(Teacher teacher);
	/** 
	* @Title: count 
	* @Description:统计现有老师数量 
	* @param @return 
	* @return int 
	* @throws 
	*/
	public int count();
	/** 
	* @Title: classTeacher 
	* @Description: TODO 查询某个班的现有教师
	* @param @param clazz
	* @param @return 
	* @return List<Teacher> 
	* @throws 
	*/
	public List<Teacher> classTeacher(Grade clazz);
	
	/** 
	* @Title: findClazzs 
	* @Description: TODO 查询老师曾经任教的班级
	* @param @param teacher
	* @param @return 
	* @return List<StudentsClass> 
	* @throws 
	*/
	public List<Grade> findClazzs(Teacher teacher);

	
}
